/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package pe.edu.upc.sigu.modelo.daoImpl;

import java.util.List;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.Query;
import org.springframework.stereotype.Repository;
import pe.edu.upc.sigu.entities.Alumnos;
import pe.edu.upc.sigu.entities.Cursos;
import pe.edu.upc.sigu.entities.Periodos;
import pe.edu.upc.sigu.modelo.dao.AlumnosPeriodosDao;

/**
 *
 * @author Usuario2
 */
@Repository(value = "alumnosPeriodosDao")
public class AlumnosPeriodosDaoImpl implements AlumnosPeriodosDao {

    private EntityManager entityManager = null;

    @PersistenceContext
    public void setEntityManager(EntityManager entityManager) {
        this.entityManager = entityManager;
    }

    @Override
    public List<Periodos> getPeriodosList(Alumnos alumno) {
        String sql = " SELECT DISTINCT b.alumnosPeriodos.periodos "+
                    " FROM NotasAlumnoCurso a JOIN a.alumnoCursoSeccion b "
                + " WHERE b.alumnos=:paramAlumno ";
        Query query = entityManager.createQuery(sql);
        query.setParameter("paramAlumno", alumno);
        return query.getResultList();


        /*
         String sql = "SELECT DISTINCT c.alumnoCursoSeccion
                    FROM NotasAlumnoCurso a JOIN a.alumnoCursoSeccion b JOIN b.alumnosPeriodos c

                  "
                + "WHERE b.alumnoCursoSeccionPK.periodo = :periodo "
                + " AND b.alumnos =:alumno ";

         */

    }

    @Override
    public List getCiclosList(Alumnos alumno) {

         String sql = "SELECT DISTINCT( a.nivelReferencial) FROM AlumnosPeriodos a WHERE a.alumnos=:paramAlumno";
        Query query = entityManager.createQuery(sql);
        query.setParameter("paramAlumno", alumno);

        return query.getResultList();
    }


}
